pkgname=msm-firmware-loader
pkgver=1.5.0
pkgrel=3
pkgdesc="Set of init services to automatically load firmware from device partitions"
url="https://postmarketos.org/"
subpackages="$pkgname-openrc $pkgname-systemd $pkgname-wcnss"
arch="armhf armv7 aarch64"
license="MIT"
source="
	https://gitlab.postmarketos.org/postmarketOS/msm-firmware-loader/-/archive/$pkgver/msm-firmware-loader-$pkgver.tar.gz
	msm-firmware-loader.initd
	msm-firmware-loader-unpack.initd
"
options="!check"

package() {
	mkdir -p "$pkgdir"

	install -Dm755 "$srcdir/msm-firmware-loader.initd" \
		"$pkgdir/etc/init.d/msm-firmware-loader"
	install -Dm755 "$srcdir/msm-firmware-loader-unpack.initd" \
		"$pkgdir/etc/init.d/msm-firmware-loader-unpack"

	# Create mountpoint for the scripts
	mkdir -p "$pkgdir/lib/firmware/msm-firmware-loader"

	install -Dm755 msm-firmware-loader.sh \
		"$pkgdir/usr/sbin/msm-firmware-loader.sh"
	install -Dm755 msm-firmware-loader-unpack.sh \
		"$pkgdir/usr/sbin/msm-firmware-loader-unpack.sh"

	install -Dm644 msm-firmware-loader.service \
		"$pkgdir/usr/lib/systemd/system/msm-firmware-loader.service"
	install -Dm644 msm-firmware-loader-unpack.service \
		"$pkgdir/usr/lib/systemd/system/msm-firmware-loader-unpack.service"
}

openrc() {
	install="$subpkgname.post-install"
	default_openrc
}

systemd() {
	install="$subpkgname.post-install $subpkgname.pre-deinstall"
	default_systemd
}

wcnss() {
	pkgdesc="Use WiFi/BT firmware from stock firmware partition using $pkgname"
	provides="firmware-qcom-msm8916-wcnss=$pkgver-r$pkgrel"
	depends="$pkgname"

	# empty package, just some magic
	mkdir -p "$subpkgdir"
}

sha512sums="
655fef07ad649eb77a7d5780c08f0656425ada06e21b6715b8048a31210f9f4d1c2985f56d4b5eeee8092b9aaf9a44391cb49c5206fdbfb894cd01c0de8f621d  msm-firmware-loader-1.5.0.tar.gz
d9ad3b21564de9a4970a8923b8598fb46a54543ac9f1494676a6833800bc68c64f230737b308fec54aae09c2cf635794e8f1abc46253b0386260b4580587483d  msm-firmware-loader.initd
616a28c3a65a45bb65f798989d93daacdeea08a90a9a8538b5bac2d73b2c8b135554ecaf49b4084829f88af760a144802adcd89b50f46bc267d6b04c9c733ff8  msm-firmware-loader-unpack.initd
"
